package com.atguigu.gmall.config;

import org.springframework.context.annotation.Configuration;

@Configuration
public class MyDubboConfig {
	
//	@Bean
//	public ApplicationConfig applicationConfig() {
//		ApplicationConfig applicationConfig = new ApplicationConfig();
//		applicationConfig.setName("boot-user-service-provider");
//		return applicationConfig;
//	}
//
//	//<dubbo:registry protocol="zookeeper" address="127.0.0.1:2181"></dubbo:registry>
//	@Bean
//	public RegistryConfig registryConfig() {
//		RegistryConfig registryConfig = new RegistryConfig();
//		registryConfig.setProtocol("zookeeper");
//		registryConfig.setAddress("192.168.22.122:2181");
//		return registryConfig;
//	}
//
//	//<dubbo:protocol name="dubbo" port="20882"></dubbo:protocol>
//	@Bean
//	public ProtocolConfig protocolConfig() {
//		ProtocolConfig protocolConfig = new ProtocolConfig();
//		protocolConfig.setName("dubbo");
//		protocolConfig.setPort(20882);
//		return protocolConfig;
//	}
//
//	/**
//	 *<dubbo:service interface="com.atguigu.gmall.service.UserService"
//		ref="userServiceImpl01" timeout="1000" version="1.0.0">
//		<dubbo:method name="getUserAddressList" timeout="1000"></dubbo:method>
//	</dubbo:service>
//	 */
//	@Bean
//	public ServiceConfig<UserService> userServiceConfig(UserService userService){
//		ServiceConfig<UserService> serviceConfig = new ServiceConfig<>();
//		serviceConfig.setInterface(UserService.class);
//		serviceConfig.setRef(userService);
//		serviceConfig.setVersion("1.0.0");
//
//		//配置每一个method的信息
//		MethodConfig methodConfig = new MethodConfig();
//		methodConfig.setName("getUserAddressList");
//		methodConfig.setTimeout(1000);
//
//		//将method的设置关联到service配置中
//		List<MethodConfig> methods = new ArrayList<>();
//		methods.add(methodConfig);
//		serviceConfig.setMethods(methods);
//
//		//ProviderConfig
//		//MonitorConfig
//
//		return serviceConfig;
//	}
//
//	@Bean
//	public ServiceConfig<PersonService> personServiceConfig(PersonService personService) {
//		ServiceConfig<PersonService> config = new ServiceConfig<>();
//		config.setInterface(PersonService.class);
//		config.setRef(personService);
//
//		return config;
//	}

}
